Repository navigation
mcpx: CI lint leg (vet, golangci-lint, gofmt, shellcheck, actionlint) + plugin bun test leg (#1996) - #2718
Conversation
…plugin bun test (#1996) The mcpx workflow ran no lint and never ran the plugin's tests. This adds the first slice of #1996: - pkgs/mcpx/.golangci.yml: v2 config, default: standard, staticcheck with checks: all. Not default: all (gosec and the rest are not blocking here). - mcpx.yml `lint` job: go vet, golangci-lint run, gofmt -l (must be empty), shellcheck over pkgs/mcpx/scripts, actionlint. The tools come from the dev shell (`nix develop`), so flake.lock pins them and the workflow passes no per-action version input (Approach C); golangci-lint and actionlint are added to nix-common.nix devTools beside mcpx. - mcpx.yml `plugin` job: bun test over every pkgs/mcpx/plugin/opencode/mcpx/*.test.ts file (the set grew past the daemon.test.ts #1996 named). Ops tests skip without OPS_LIVE_SOCKET; the Go job is where the daemon itself is exercised. Findings fixed in the same PR: 12 files were not gofmt-clean on main, and stress.sh had SC2034 (unused `here`) and SC2319 (`check $?` after `[ ]`). TS lint/check and per-language formatting enforcement stay on #1996. Refs #1996 Co-authored-by: CommandCodeBot <noreply@commandcode.ai>
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 51 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Co-authored-by: CommandCodeBot <noreply@commandcode.ai>
…ller extra-conf, #1996)
The lint job realised the flake default dev shell (whole monorepo env: Rust, Android SDK, clan, Haskell) on a cold runner and was cancelled at its 20-minute timeout before any linter ran (run 41122626395). Add a minimal devShells.mcpx-lint (go_1_27, golangci-lint, shellcheck, actionlint from the same pinned nixpkgs-unstable) and point the lint leg at it; tool versions stay flake-pinned (Approach C).
First full golangci run surfaced 119 pre-existing findings module-wide (errcheck 50, staticcheck 50, unused 17, ineffassign 2) — filed as #2836 per #1996 acceptance fallback. vet/gofmt/shellcheck/actionlint stay blocking; golangci prints every run but does not gate until #2836 removes continue-on-error.
…lcheck -S warning (#1996)
What
First implementation slice of #1996, rescoped against current
main. mcpx CI had no lint step and the plugin'sbun testsuite had never run in CI.pkgs/mcpx/.golangci.yml(new): golangci-lint v2 config —linters.default: standardplusstaticcheckwithchecks: [all]. Notdefault: all, not gosec-blocking..github/workflows/mcpx.yml: new lint leg runninggo vet ./...,golangci-lint run, agofmt -lcheck,shellcheckoverpkgs/mcpx/scripts(root.shellcheckrc,enable=all) andactionlint; plus a plugin leg runningbun testover everypkgs/mcpx/plugin/opencode/mcpx/*.test.ts(daemon,ceiling,ops— the set grew since mcpx testing: every formatter and linter in the CI matrix, pinned by the flake (and run the plugin's bun test) #1996 was written).nix-common.nix: tool versions pinned through the flake/dev shell rather than per-action version inputs (approach C).SC2034/SC2319inscripts/stress.sh,SC2012inbench.sh) and the Govet/staticcheckfindings the new leg surfaces. Baseline was small; gofmt was already clean.Verification
bun test) leg.go test ./...legs and themcpx-nixbuildworkflow must stay green.No sandbox builds — CI is the verification surface.
Scope
This does not close #1996. Remaining steps there (TS lint/check, per-language formatting enforcement) are later slices.
Queue task 3291.
Need help on this PR? Tag
@codesmith-botwith what you need.